Link clouds and user/community-driven dynamic interlinking of resources

ABSTRACT

A network-based communication and information discovery solution that pertains to network-accessible resources and the use of interlinks among resources. In one embodiment, dynamic interlinking of resources is proposed, wherein the resources reside in a web-based system and are accessible via web-clients. The resources can be representable by an administrator in a graph-like structure interlinking the resources with each other and thus defining a navigation model. An extended navigation model can be implemented by a user-generated, personal or collaborative interlinking functionality.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of European Patent Application No.09170680.4 filed 18 Sep. 2009 and entitled “Link Clouds andUser/Community-Driven Dynamic Interlinking of Resources”, which isassigned to the assignee of the present application, and the teachingsof which are hereby incorporated by reference in their entirety.

BACKGROUND

The disclosure relates to the field of network-based communication andinformation discovery and to network-based storage and management ofnetwork-accessible resources. More specifically, the disclosure relatesto link clouds and user/community driven dynamic interlinking ofresources.

In recent years, web-based systems such as Enterprise InformationPortals have gained importance in many companies. Some of these systemsintegrate, as a single point of access, various applications andprocesses into one homogeneous user interface. Such systems canencompass a huge amount of content. Content of these systems are oftennot exclusively maintained by single, centralized entity. Instead Web2.0 techniques may be used, allowing user generated content to be added.These systems can grow quickly and in a somewhat uncoordinated way asdifferent users possess different knowledge and expertise and obey todifferent mental models. That is, the loosely coupled nature of Web 2.0systems can be both a benefit for acquiring content and a hindrance forfinding relevant content for a given user's needs.

In other words, the continuous growth of content systems where users arepermitted to add content can makes it increasingly challenging to accessrelevant information, quickly. Hence, there is a disconnect between userneeds and available tools. That is, users often need to find task and/orrole-specific information quickly, yet these same users face informationoverload that can leaves them feeling lost in hyperspace. Consequently,users may not be able to locate resources that are potentially relevantto their tasks, simply because they never come across them.

The recent popularity of collaboration techniques on the Internet,particularly tagging and rating, provides new means for bothsemantically describing Web content and for indicating users' interests,preferences and contexts.

FIG. 1 shows basic structural components of a prior art hardware andsoftware environment used for a prior art tagging-based method whensearching for some content. In FIG. 1, a web client 10 (which may be oneof large plurality of web clients) cooperates with a web server 12during a user's search for content. Tags 14 are used for characterizingthe content. There are many resources 16A . . . 16N available(accessible) by the searching user via a Web browser interface of Webclient 10. Conventional tags 14 are often not selective enough for theneeds of a searching user, which results in this user being able to findthe best suited content only accidentally. That is, a user is generallyunable to consistently find the best suited available content on aconsistent basis when searching for a reasonable duration.

Problems can also result from different system users having differentexperience levels, when all of these users contribute tag content to acertain theme or topic. For example, a more expert user may know manydetails of a given theme, and will keep them unpublished (not tagged),because this user believes these details are self-evident. Other lessexpert users, however, who also contribute content to the Internet, maynot know many basic or rudimentary details, which they will incorporateinto the tag information. Such overly rudimentary details will notreally be interesting for more advanced users, and may be distracting,thus making finding desired content in a reasonable durationchallenging. Additionally, different users often use different terms,which may be synonyms to each other, or at least may be closely relatedin context of the content. Thus, different terms and different tags mayexist, which are directed to the same content. Use of different, yetcorresponding terms, for the same thing can make searching, tagging, andindexing difficult.

SUMMARY

Numerous aspects of the disclosure are contemplated which can beoptionally implemented in various embodiments of the disclosure. Not allaspects are present in every embodiment, and described aspects areexpected to be tailored and adapted for specific implementations. Thus,the various aspects and details expressed herein, when taken as a whole,permit one of ordinary skill in the art to grasp the scope of thepresent disclosure, which is defined more succinctly by the claims. Itshould be understood that nothing in this brief summary or detaileddescription is meant to be construed in a manner that limits the scopeof the claimed content expressed herein.

One aspect of the disclosure is for an electronic, web-based dataprocessing system, a method, a computer program product, and/or anapparatus usable for dynamic interlinking of resources. This aspect can,but need not include: a mechanism allowing users dynamicallyinterlinking of arbitrary resources, wherein said mechanism comprises aGUI component displayed for a resource a user is looking at; an extendednavigation model extended by a user-generated, personal or collaborativeinterlinking; a navigation GUI including a graphical representation forthe user-generated interlinks; an analyze component measuring the mostfrequently defined interlinks between two resources; a graphicalcomponent displayed for a current resource, comprising links to thoseresources the current resource is linked to, wherein each link isrepresented differently depending on said frequency; a component forgenerating personal and community navigation permanently displayed inthe web-client, wherein said personal navigation includes personalinterlinks only, and wherein community navigation includes collaborationinterlinks, and a content recommendation component leveraging theknowledge about created interlinks to recommend related resources whichwill be displayed for each resource. In one embodiment, the resourcescan reside on said system and can be accessible via web-clients. Theresources can be representable by an administrator in a graph-likestructure interlinking the resources with each other and thus defining anavigation model.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 (Prior Art) illustrates structural components for finding contentfrom a Web server.

FIG. 2 illustrates structural components of a Web server that utilizesinterlinks in accordance with an embodiment of the disclosure.

FIG. 3A illustrates the control flow for generating interlinks inaccordance with an embodiment of the disclosure.

FIG. 3B illustrates the control flow for utilizing interlinks inaccordance with an embodiment of the disclosure.

FIG. 4 showing a hierarchical arrangement of Internet-accessibleresources, in accordance with a travel arrangement example.

FIG. 5 illustrates an exemplary GUI implementing interlinks inaccordance with an embodiment of the invention.

FIG. 6 shows a hierarchical arrangement of Internet-accessible resourcesincluding personal interlinks, in accordance with a travel arrangementexample.

FIG. 7 shows a hierarchical arrangement of Internet-accessible resourcesincluding collaborative interlinks, in accordance with a travelarrangement example.

FIG. 8 illustrates use of Link Clouds in accordance with an embodimentof the disclosure.

FIG. 9 illustrates personal and community navigation based on the schemeof FIG. 3, in accordance with an embodiment of the disclosure.

FIG. 10 illustrates inventional forward, backward and sideward linkingof resources, in accordance with an embodiment of the disclosure.

FIG. 11 illustrates the multi-segment linking of resources in accordancewith an embodiment of the disclosure.

FIG. 12 illustrates a dataset usable for storing the information whichis required or useful, respectively, in accordance with an embodiment ofthe disclosure.

DETAILED DESCRIPTION

In the disclosure, dynamic interlinking of resources is proposed,wherein the resources reside in a web-based system and are accessiblevia web-clients. The resources can be representable by an administratorin a graph-like structure interlinking the resources with each other andthus defining a navigation model. An extended navigation model can beimplemented by a user-generated, personal or collaborative interlinkingfunctionality.

Interlinking features disclosed herein enable a user to navigate in avery efficient way, without losing time in searching the adequatenavigation in a large plurality of web sites, in order to do any task,defined by its goal, e.g. to book a flight, a hotel and rent a car,together, as a single business activity. Further, this can be donewithout using tags. It thus avoids the disadvantages described above inthe discussion of prior art.

The generated interlink connections can be restricted for private useonly, or can be made available for pre-defined user groups, or even forany user. So, experienced users can follow a shorter navigation paththan novice users who need more comments and explanations in any givenbusiness activity. In one embodiment, certain content can be recommendedwithout using tags. This avoids the disadvantages described above in thediscussion of prior art.

In one embodiment that uses multi-segment linking, a whole link flow canbe presented to the user. The step of skipping from one to the nextresource can be done automatically or triggered by a user input (e.g.clicking a button) to automatically perform the “next link” comprised ofthe link sequence (i.e. the link flow).

Thus using the disclosure, a kind of interactive “web cinema” can beprovided to the user in which a large plurality of users can easilyexperience that what other users have composited.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable storage medium(s) maybe utilized. A computer readable storage medium may be, for example, butnot limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. More specific examples (a non-exhaustivelist) of the computer readable storage medium would include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), an optical fiber, a portable compact disc read-onlymemory (CD-ROM), an optical storage device, a magnetic storage device,or any suitable combination of the foregoing. In the context of thisdocument, a computer readable storage medium may be any tangible,non-transient medium that can contain, or store a program for use by orin connection with an instruction execution system, apparatus, ordevice.

Program code embodied on a computer readable medium may be transmittedusing any appropriate transmission medium, including but not limited towireless, wireline, optical fiber cable, RF, etc., or any suitablecombination of the foregoing. Computer program code for carrying outoperations for aspects of the present invention may be written in anycombination of one or more programming languages, including an objectoriented programming language such as Java, Smalltalk, C++ or the likeand conventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

Before referring to the Figures, definitions of a few terms areprovided. These terms apply to the discussion of FIG. 1, as well as theother figures in this Disclosure. As used herein, tagging refers to theprocess of assigning keywords (or metadata) to resources. A tag itselfis “some” metadata associated to a resource. Tags themselves arenon-hierarchical keywords taken from an uncontrolled vocabulary.

A resource can refer to an entity that is uniquely identifiable(addressable). Thus, a resource can be a Web resource having anassociated Uniform Resource Locator (URL), a domain name, or some otherunique identifier (which can be either locally or globally uniquedepending on usage). Tags can add valuable meta information and evenlightweight semantics to web resources.

A rating refers to the evaluation or assessment of something, in termsof quality (as with a critic rating a novel), quantity (as with anathlete being rated by his or her statistics), or some combination ofboth. That is, it is the process of assigning (e.g. numeric) “values” toresources indicating how much people “like” those. A rating itself is“some value” associated to a resource. Ratings themselves are chosenfrom an interval of possible “values” whereas the one end of theinterval usually refers to “dislike” and the other to “like”.

Turning to FIG. 2, one or more web clients 10 cooperate with a webserver 12 during his search for selected content. Unlike conventionalteachings that are dependent upon tags (e.g. FIG. 1), an embodiment ofthe disclosure utilizes weighted links 18 for navigating and guiding theuser through the content comprised of the many resources 16 A . . . 16N.

A first usage scenario relates to navigation in a single, complexportal. In this scenario, the web server 12 stores the user navigationinformation (i.e., the sequences of accessed network resources over alonger historic time range). Then, offline and independent of actualuser traffic, an evaluation component analyzes the navigation anddetermines those navigation data which were used most frequently by theusers. In one example, the evaluation yields that most users of theexample (e.g., 160,000 users in a month) selected a link to the contentof resource 16N from 16A, which is denoted by arrow 20 illustrating theinterlinking of resources 16A and 16N.

Further, starting again from current content 16A, less users (e.g.,80,000 users in a month) selected a link to the content 16J of resourceJ from resource 16A, which is denoted by arrow 22 illustrating theinterlinking of resources 16A and 16J. Thus, a kind of linking statisticis done permanently at the web server. So, the Web server 12 is providedwith an interlink-engine and database 24, which picks always for eachresource accessed actually by any client 10 the actual respectiveinterlink statistic and displays to the user those “favorite” links to anext resource. So, the user may follow directly such interlink proposal,and will in most cases finish his work much more early than before, asin most cases the large majority finds out the best way to perform atask in the Internet.

Another usage scenario provides for interlinking across different webservers. In this scenario a user is assumed to request a certain webpage. This user request is intercepted by a proxy server which ispre-connected between client browser and said user desired web page.This proxy server extracts the URL of said web page from the userrequest and requests this page itself. The proxy server fetches thecontent of this requested web page. Then in a particular step associatedwith the disclosure, the proxy server will enrich the Markup Code orwhatever code received from the user desired web page with ownadditional Markup code comprising the GUI specific for the invention asdiscussed further above. So, the proxy server will inject thisadditional code which provides for the linkage functionality describedabove, into the received code.

In a next step the proxy server forwards the enriched code back to thebrowser of the requesting user, for whom the operation of the proxyserver is fully transparent. Then the user is displayed a GUI relatingto link clouds, etc., as described above and is thus enabled to press abutton for starting or finishing a linkage process, respectively. Thedatabase comprising and managing the link statistics may runs at saidproxy server. The link collecting and evaluation engine, as denoted inFIG. 2 as content recommendation engine and navigation engine thuscollects the user activities and thus operates across different webservers. Thus it is enabled also to display the interlinking GUI foraccessing links between different web servers.

The skilled reader will understand that the before mentioned proxyserver may also be interconnected between the user's Web Browser andmore than one web server. So, the proxy server can also include an own“simple business voyage” portal comprising user access functionalityaccording to the state-of-the-art and offering to the user a kind of“simplified” business voyage activities by using the before-describedlinking functionality for a predetermined pool of business offerers witha respective predetermined pool of business web servers. Such pool ofweb servers may comprise for example a number of twenty flight offerers,twenty rental car offerers, twenty hotel chains.

FIGS. 3A and 3B illustrate the control flow of the an embodiment of thedisclosed method in a web client and in a web server, as well as theirinteraction.

With reference to FIG. 3A an interaction diagram is shown forillustrating the workflow between a user navigating through a portalsystem by means of his web browser (left side) and a web server client(right side) which serves the user request, in the context of generatinginterlinks according to the invention.

In first step 310 a user navigates through the portal system, visits oneor another webpage which is served respectively by the client web serverin a respective serving step 312 in response to each web request of astep 310. In the step or steps 312 a user request is responded by theweb server by sending for example the mark up for a page being requestedby a user.

Steps 310 and 312 might be repeated without any predeterminedlimitation.

Then, the user is assumed to navigate to a source page in the context ofthe present invention, this is a page the user wants to interlink from,see step 314. In response to that request the web server serves thisrequest in a step 316 and sends the mark up for this source page. Thissource page can be assumed to comprise according to the invention abutton “interlink from”, see also FIG. 5, reference 50 and 54. The userdecides to select this current web page (source page) as a source for aninterlink generated by him. Thus, he clicks the button “interlink from”,step 318. This clicking of this button triggers the storage of the ID ofthe source page at the side of the web server. He allocates storagespace adequate and dimensioned such that a full complete data set asillustrated exemplarily in FIG. 12 may be stored in relation to thebefore mentioned ID of the source page.

Then, the user is assumed to continue navigating. For example the usercan navigate through the portal system and finds after a sequence ofnavigation steps crossing over a number of twelve pages until he findsthat what the user originally wants to find; namely the “target page”(i.e., the web page which corresponds to the source page as beingassociated to the source page by some business context). Once the userhas realized that he has landed correctly on exactly the page which isuseful to use in order to complete the desired business activity, heclicks a button “interlink to here”, see also FIG. 5, reference 52. Thisbutton “interlink to here” is displayed to a user according to thisembodiment in basically all those web pages which show some usefulcontent for a user or, if provided at every web page in order to enablethe user to feel free when generating targets for an interlinkprocedure. This happens in step 322 and 324.

Then, in a further step 326 the user is assumed to click the button“interlink to here”. This click triggers the storing of the ID of thetarget page (i.e. the current page) where the user clicked the button“interlink to here” at the storage location related to the source pagestored for the interlink at step 320. Then, further data are collectedby the web server, as they reveal from FIG. 12. So, a data set accordingto FIG. 12 is stored at step 328. By that, the data set of step 328 canbe provided to a further or to the same user when he visits the sourcepage of this interlink in order to provide efficient navigation forquickly completing his business activity, when he or another user visitsthe source page in another web session. This is shown in more detailwith reference to FIG. 3B, which illustrates an interaction diagramincluding the steps of the web server offering an interlink as describedwith reference to FIG. 3A.

With reference now to FIG. 3B, the user is assumed to have navigatedthrough the portal system as described above to perform the businessactivity of FIG. 3 A. In a step 350, he requests a given web page, whichrequest is served by the web server by sending its response, containingthe mark up of the requested page, step 352.

It should be noted that during its navigation of step 350 or thenavigation before the user reaches the web page of step 350, each webpage the user requests he is displayed for each web page or for eachresource all available and pre-stored interlinks to target pages, asexemplarily illustrated in FIG. 8 the context of the link cloud 80.

Then, in a further step 362 the user decides to follow an availableinterlink and thus clicks a link in this link cloud which contains thedesired link to the page, the user wanted to navigate. Of course, theproposed and displayed members of a link cloud may have names whichdescribe the activity behind a respective link of a link cloud. So, forexample according to FIG. 8 the name of a link named “hotel booking” isquite descriptive for the business activity behind that claim (i.e. tobook a hotel room).

Thus, the skilled reader will appreciate that the probability is highthat when the user clicks a recommended link, he will perfectly completehis desired business activity.

Then, after clicking a proposed link of a link cloud the server servesthe desired target page in a step 364.

With reference to FIGS. 4 to 11 an exemplary use of the method isdescribed, in the context of booking a flight, a hotel and some car andtrains for doing a business trip. This context is for illustrativepurposes to facilitate understanding of inventive concepts expressedherein and is not to be construed as a limitation of the underlyingconcepts expressed herein.

FIG. 4 illustrates the structure of a sample system, showing ahierarchical arrangement of Internet-accessible resources which areusable when booking a flight, a hotel and some car and trains for doinga business trip. This example can be implemented using prior arttechniques, which have numerous disadvantages, which will be describednext below and set into contrast to the interlink technique.

Web-based systems are comprised of collections of resources in abovesense. In many general web-based systems these resources are (web)pages, in Portal systems these are pages and portlets. These resourcesprovide users with content and services. Different resources providedifferent content, which can still be related. For example, there mightbe pages part of an Enterprise Information Portal that provide means tobook flights, hotels, cars or trains—different pages with similar usecases.

Prior to the Web 2.0 era these resources have been brought into relationby some central instances, usually administrators or content authors.However, those superimposed structures were not necessarily compliant tousers' mental models and therefore resulted in significant effort tofind the information needed. This became even worse, once user generatedcontent was added, where the structure did not follow the design theadministrator had in mind.

FIG. 4 shows the structure of a sample system within which four branchesexist below the root node. Along the first branch authors have puteverything having something to do with “flying”, e.g. pages that provideinformation about airports (location, arrival and departure times offlights, etc.), travel regulations (official regulations and internalcompany regulations), and finally a page to book a flight. Along thesecond branch authors have put everything have something to do with“hotels” (e.g., pages that provide information about hotels at differentlocations as well as a page to finally book a hotel). Along the thirdbranch authors have put similar pages having something to do with “carsand trains”. Underneath the fourth branch users find pages to do theirtravel expense.

Experienced users know about their favorite airports, the external andinternal travel regulations and so forth—they just want to do theirbookings Given the structure above users would have to perform a lot of(unnecessary) clicks to traverse the booking pages. With theavailability of a tagging engine users could have had tagged (whichwould have been work, too) these pages with the term “booking”, but eventhen users would have to fire up the tag cloud, select the right tag,analyze the result list of resources that have been tagged with theselected tag and select the right one out of those being presented.Moreover, there could be more pages tagged with the term “booking” butbeing irrelevant in the scenario described.

FIG. 5 illustrates an exemplary GUI 50, 52 displayed in the web client,when using an embodiment of the disclosure. FIG. 6 illustrates thestructure of FIG. 3, but including personal interlinks 60, 62, 64interconnecting between some of the shown resources,

With reference to FIG. 5 and FIG. 6 private personal interlinksaccording to this embodiment behave similar as private tags as describedin the following: Nauerz, A., et al., “New Tagging Paradigms for ContentRecommendation in Web 2.0 Portals”, Workshop on Adaptation andPersonalization for Web 2.0, User Modeling, Adaptation andPersonalization “UMAP”, Trento, Italy, Jun. 22-26, 2009. This documentis included in the filed Information Disclosure Statement (IDS) and isincorporated herein by reference.

The interlinks can only be seen by the user who created them. FIG. 5exemplarily visualizes how private personal interlinks can be createdwithin a typical Web Portal solution. First, the user navigates to theresource where he wants to interlink from, the source resource. Aresource can be a page, a portlet or anything uniquely reference-able.There he clicks a button which triggers the linking process. Next, henavigates to the resource he wants to interlink to, the target resourceand clicks a button which finishes the linking process and establishesthe interlink between both resources. This way every user can interlinkthe resources he personally thinks should be related, totallyindependent from what an administrator or content author had in mind whoalways try to create structures satisfying majorities but notnecessarily single users. He can manually create personal shortcuts andcross-references between related content. This way navigating throughthe system can be personalized and speeded-up (optimized) in variousways.

In the example described earlier a user might be one of thoseexperienced users that usually want to do his booking just bysequentially traversing the three booking pages and the travel expensepage. Thus such user would create three personal interlinks as depictedin FIG. 6 (see the dotted connectors 60, 62, 64—one from the flightbooking page to the hotel booking page, one from the hotel booking pageto the car booking page, and one from the car booking page to the travelexpense page). Next time he is doing his bookings he can follow thispath by doing three clicks only, just following his personal interlinksincluding a widget collecting his travel expenses.

With reference to FIG. 7 the benefits of dynamic interlinking procedurebecomes evident when allowing collaborative dynamic interlinking.

FIG. 7 illustrates the structure of FIG. 3, but includes collaborativeinterlinks interconnecting between some of the shown resources.

A collaborative dynamic interlink created by one user can be seen by allother users. Creating collaborative interlinks is done similar ascreating private interlinks, except that a checkbox indicating that thenext interlink to be created should be a private interlink has not to beselected (see above text to FIG. 5).

The private interlinks created before may have been created ascollaborative interlinks, too. Thus, one or more experienced users couldhave set interlinks between the booking pages. This can help people thatwant to do their booking for the very first time. These users do notneed to search for one booking page after the other anymore, insteadthey can follow the interlinks available.

In one embodiment, private and collaborative interlinks can be mixed.Additionally, a private interlink can be converted to a collaborativeinterlink and vice-versa. For example, in addition to the collaborativeinterlinks (dotted connectors) interlinking the booking pages, lessexperienced users might want to interlink from these pages to thecorresponding pages providing information for travel regulations (brokenline connectors)—see FIG. 6 again.

With special reference to FIGS. 7 and 8 the feature of VisualizingDynamic Interlinks according to the disclosure will be described nextbelow.

FIG. 8 illustrates so called <<Link Clouds>> displayed at the web clientfor assisting him when finding the best suited resource he is lookingfor.

An important aspect is that of course multiple interlinks can be createdfrom any resource to any other; similar, each single resource can be theendpoint of several interlinks pointing to it. Depending on user's needsthe interlinks could also be added between other booking pages. Forexample, see FIG. 7, where solid as well as dotted lines representcollaborative interlinks (e.g., between the flight booking page and thecar booking page, the flight booking page and the travel expense pageand so forth). This could be done by users that do never need all threebooking pages because they never book a car and want to skip therespective page.

This is analogous to what may be observed in collaborative taggingenvironments, where single resources can be tagged with multiple tags.The most important concept to visualize tags (and their importance) forsingle resources or a set of resources are tag clouds. Tag cloudsdisplay which tags are available and how often these have been applied(with respect to what one is looking at); more often applied tags areregarded as more important tags which are usually presented in a largerfont size.

The skilled reader will appreciate that a similar mechanism is proposed,which we refer to as link clouds, for visualizing dynamic interlinksWhen navigating from one resource to another, the user- or communitycreated personal interlinks can be used in addition to the links thatwere originally created by an administrator or content author.

Therefore, if collaborative interlinks have been created as describedabove, when being on the flight booking page there could be a link tothe superior flights page as modeled by the content author. Butadditionally a link cloud could display interlinks to the hotel page,the cars page and the travel expense page. If most users navigate fromthe hotel page to the cars page more people would interlink these twopages. So, if 10 users interlink the flight booking page to the hotelbooking page, 5 from the flight booking page to the cars booking pageand 1 from the flight booking page to the travel expense page, then thefirst linkage would be regarded the most important one, the second onethe second most important one and so forth.

FIG. 7 visualizes this as the thicker solid connectors representinterlinks set by more users. Link clouds visualize this importance tothe users. Different solutions can be thought of In an embodimentaccording to FIG. 8 link clouds look like tag clouds presenting adescription of the target resource they are linking to. Depending on theimportance of the available collaborative interlinks (derived by howoften a certain interlink has been set) some targets could be presentedmore prominent (larger font size) than others.

With reference to FIGS. 9 and 10, personal and community navigationaccording to the disclosure will be described next. Specifically, FIG. 9illustrates personal and community navigation based on the scheme ofFIG. 6. FIG. 10 illustrates forward, backward and sideward linking ofresources.

Taking into consideration all personal and collaborative interlinksavailable in the system according to the users are provided withadditional navigation menus, accompanying the one originally created byan administrator or content author, from which they can select.Therefore users are provided with a pull-down menu, displayed at the topcorner of every page, where a user can select between the followingnavigation menus: original navigation, personal navigation, communitynavigation, aggregated navigation.

The original navigation represents the navigation as created by anadministrator or content author not containing any personal or communityinterlinks. The personal navigation adds personal interlinks to theoriginal navigation so that these can be used from within the standardnavigation menu. The community navigation adds collaborative interlinksto the original navigation. The aggregated navigation adds personal andcollaborative interlinks to the original navigation.

It is also possible to display a navigation menu comprised of personalor community interlinks only, not containing the original navigation atall. This can be controlled via an additional check-box.

With respect to the previous sample, FIG. 9 shows the aggregatednavigation, which contains all administrator created links, as well asall collaborative interlinks and the user's personal interlinks. Thesame figure without the broken line connector would represent thecommunity navigation, without the dotted connectors the personalnavigation and without the broken line and dotted connectors theoriginal navigation.

With reference to FIG. 10, features of content recommendation accordingthe present invention will be described in more detail. According to theinvention, leveraging the knowledge about incoming and outgoing dynamicinterlinks for any resource allows to perform related contentrecommendations. Three scenarios are proposed.

One of these scenarios, forward linking, (dotted lines in FIG. 10)describes the most simplistic case. With respect to the previous exampleone might know that interlinks exist pointing from the flight bookingpage to the hotel booking page, to the car booking page and to thetravel expense page. Thus one knows that all these three target pageshave something to do with the source page and can be recommended whenbeing on the source page.

Backward linking (also dotted lines in FIG. 10) describes the secondcase. One might know that the flight booking page, the hotel bookingpage, and the car booking page link to the travel expense page. Thus onecould recommend these three source pages when being on the target page.

Sideward linking (red lines in FIG. 7 again) describes the third case.Again, one might know that interlinks exist pointing from the flightbooking page to the hotel booking page, car booking page and travelexpense page. Thus, there might not only be a relationship between thesource and target pages, but also among the sources (or targets)themselves. Thus, a user being on the hotel booking page might also beinterested in the car booking page as both are referenced from the samesource page. So, a respective link cloud is presented to him.

With reference to FIG. 11, features of multi-segment linking will bedescribed next below.

The disclosure allows also for doing more than just interlinking oneresource to exactly one other. Reference is given to a continuoussequence of interlinks (i.e., paths, as “link flows”).

Such paths may be manually created by users (an additional check-box inthe UP GUI, see FIG. 5, allows to do so), or, in a more sophisticatedvariant those paths may be detected and recorded by the system. Lattercould be based on following: From one resource to another, the “top”interlink (the one set by most users), or on analyzing which availableinterlinks users follow, again from one resource to another, most often.

With respect to our sample such a path could be comprised of theresources home page, flight booking page, hotel booking page, carbooking page, and travel expense page—see FIG. 11.

With reference to FIG. 12 illustrating a dataset 129 usable for storingthe information which is required or useful, respectively, when using anembodiment of the method for producing and displaying interlinks, suchdataset comprises the following data:

the source object ID 122 (e.g. the URL of a source page or portlet);

the target object ID 124 (e.g., URL of the target page or portlet);

a flag 126 specifying if the link is to be handled as private orcollaborative. In case of a private flag, the User ID 128 (e.g. in formof a traditional User ID when interlinking between objects of a singleportal shall take place) otherwise the hardware ID of the computer auser had used, coupled with its URL.date 130 and time 132 of generating the interlink.

Optionally comprised of this dataset is:

a subcommunity ID 134 (e.g. for experts, or learners or mediumexperienced users);

an ID 136 of the hardware device in use for displaying the interlinks inan adequate way to the user;

a flag 138 specifying if the interlink has been generated during theweekend or not.

For the avoidance of doubt, the term “comprising”, as used hereinthroughout the description and claims is not to be construed as meaning“consisting only of”. It will be appreciated by those skilled in the artthat the invention is not just limited to email messages, but is alsoapplicable to other types of messages that have a distribution list thatcan be updated.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the disclosure has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. An electronic, web-based data processing systemusable for dynamic interlinking of resources comprising: a mechanismallowing users dynamically interlinking of arbitrary resources, whereinsaid mechanism comprises a graphical user interface (GUI) componentdisplayed for a resource a user is looking at, and wherein said GUIcomponent comprises: a control for triggering the interlinkingmechanism; a control for defining personal or collaborativeinterlinking; and a control for finishing said interlinking process onthe target resource; an extended navigation model extended by auser-generated, personal or collaborative interlinking; a navigation GUIincluding a graphical representation for the user-generated interlinks;an analyze component, of the Web based data processing system formeasuring the most frequently defined interlinks between two resources;a graphical component displayed for a current resource, comprising linksto those resources the current resource is linked to, wherein each linkis represented differently depending on a frequency associated with themost frequency defined interlinks between two resources; a component forgenerating personal and community navigation displayed in theweb-client, wherein said personal navigation includes personalinterlinks only, and wherein community navigation includes collaborationinterlinks, and a content recommendation component, of the Web basedprocessing system for leveraging the knowledge about created interlinksto recommend related resources which will be displayed for eachresource, wherein said resources reside on said system and areaccessible via web-clients, wherein said resources are representable byan administrator in a graph-like structure interlinking said resourceswith each other and thus defining a navigation model.
 2. A method fordynamic interlinking of resources comprising: using a mechanism, of acomputing device, allowing users to dynamically interlink arbitraryresources, wherein said mechanism comprises a graphical user interface(GUI) component displayed on a display for a resource a user is lookingat and wherein said (GUI) component comprises: a control for triggeringthe interlinking mechanism; a control for defining personal orcollaborative interlinking; and a control for finishing saidinterlinking process on the target resource; using the mechanism, thecomputing device establishing an extended navigation model comprisinguser-generated interlinks; using a navigation GUI, provided byprogrammatic instructions executing on a processor of the computingdevice, including a graphical representation for the user-generatedinterlinks, wherein the graphical representation is generated by thecomputing device and displayed upon the display; the computing deviceusing an analyze component, implemented in program instructionsexecuting on the processor, to measure the most frequently definedinterlinks between two resources; the computing device using a graphicalcomponent displayed on the display for a current resource, comprisinginterlinks links to those resources per the extended navigation modelthat the current resource is linked to, wherein each interlink isrepresented differently depending on frequency, as determined by theanalyze component; the computing device using a component for generatingpersonal and community navigation elements that are displayed in theweb-client, wherein said personal navigation elements includes personalinterlinks only, and wherein community navigation elements includescollaboration interlinks; and the computing device using a contentrecommendation component leveraging the knowledge about createdinterlinks to recommend related resources, which will be displayed foreach resource, wherein said resources reside on a server of a web-basedsystem and are accessible via web-clients, wherein said resources arerepresentable by an administrator in a graph-like structure interlinkingsaid resources with each other and thus defining a navigation model. 3.The method of claim 2, wherein said GUI component comprises: a controlfor triggering the interlinking mechanism, a control for definingpersonal or collaborative interlinking; and a control for finishing saidinterlinking process on the target resource.
 4. The method of claim 2,wherein the user generated interlinks comprise personal interlinks. 5.The method of claim 2, wherein the user generated interlinks comprisecollaborative interlinks.
 6. The method according to claim 2, comprisingfurther the use of a graphical user interface control for definingmulti-segment interlinks.
 7. The method according to claim 2, comprisingthe computing device further creating a link flow.
 8. The method ofclaim 2, wherein the GUI component comprises a button for triggering theinterlinking mechanism, a check box for defining either personal orcollaborative interlinking, and a button for finishing the interlinkingprocess on a target resource.
 9. A computer program product comprising atangible, non-transitory computer readable storage medium havingcomputer usable program code embodied therewith, the computer usableprogram code comprising: computer usable program code stored on atangible storage medium that when executed by a processor use amechanism allowing users to dynamically interlink arbitrary resources,wherein said mechanism comprises a graphical user interface (GUI)component displayed for a resource a user is looking at, and whereinsaid GUI component comprises: a control for triggering the interlinkingmechanism; a control for defining personal or collaborativeinterlinking; and a control for finishing said interlinking process onthe target resource; computer usable program code stored on a tangiblestorage medium that when executed by a processor use the mechanismestablishing an extended navigation model comprising user-generatedinterlinks; computer usable program code stored on a tangible storagemedium that when executed by a processor use a navigation GUI includinga graphical representation for the user-generated interlinks; computerusable program code stored on a tangible storage medium that whenexecuted by a processor measure the most frequently defined interlinksbetween two resources; computer usable program code stored on a tangiblestorage medium that when executed by a processor use a graphicalcomponent displayed on the display for a current resource, comprisinginterlinks links to those resources per the extended navigation modelthat the current resource is linked to, wherein each interlink isrepresented differently depending on frequency, as determined by theanalyze component; computer usable program code stored on a tangiblestorage medium that when executed by a processor generate personal andcommunity navigation elements that are displayed in the web-client,wherein said personal navigation elements includes personal interlinksonly, and wherein community navigation elements includes collaborationinterlinks; and computer usable program code stored on a tangiblestorage medium that when executed by a processor leverage the knowledgeabout created interlinks to recommend related resources, which will bedisplayed for each resource, wherein said resources reside on a serverof a web-based system and are accessible via web-clients, wherein saidresources are representable by an administrator in a graph-likestructure interlinking said resources with each other and thus defininga navigation model.
 10. An apparatus comprising: a central processingunit; a memory subsystem; an input/output subsystem; and a bus subsysteminterconnecting the central processing unit, the memory subsystem, theinput/output subsystem, wherein said system: uses a mechanism allowingusers to dynamically interlink arbitrary resources, wherein saidmechanism comprises a graphical user interface (GUI) component displayedfor a resource a user is looking at, and wherein said GUI componentcomprises: a control for triggering the interlinking mechanism; acontrol for defining personal or collaborative interlinking; and acontrol for finishing said interlinking process on the target resource;uses the mechanism establishing an extended navigation model comprisinguser-generated interlinks; use a navigation GUI including a graphicalrepresentation for the user-generated interlinks; uses an analyzecomponent, implemented in program instructions executing on theprocessor, to measure the most frequently defined interlinks between tworesources; uses a graphical component displayed on the display for acurrent resource, comprising interlinks links to those resources per theextended navigation model that the current resource is linked to,wherein each interlink is represented differently depending onfrequency, as determined by the analyze component; uses a component forgenerating personal and community navigation elements that are displayedin the web-client, wherein said personal navigation elements includespersonal interlinks only, and wherein community navigation elementsincludes collaboration interlinks; and uses a content recommendationcomponent leveraging the knowledge about created interlinks to recommendrelated resources, which will be displayed for each resource, whereinsaid resources reside on a server of a web-based system and areaccessible via web-clients, wherein said resources are representable byan administrator in a graph-like structure interlinking said resourceswith each other and thus defining a navigation model.
 11. The apparatusof claim 10, wherein the GUI component comprises a button for triggeringthe interlinking mechanism, a check box for defining either personal orcollaborative interlinking, a button for finishing the interlinkingprocess on a target resource, and a check box for defining multi-segmentinterlinks.